Coordinate input apparatus, control method therefore, and program

ABSTRACT

At least one exemplary embodiment is directed detecting a position pointed on a coordinate input region by using a first and second sensor units provided in the vicinities of both ends of one side of a coordinate input region, angle information representing directions of shadows, which are areas light-shielded by pointing performed by two pointing means. The shadows are detected according to a light amount distribution, which is obtained from optical units of the first and second sensor units. Additionally, the coordinates of positions located by the two pointing means can be calculated by using 1) a combination of pieces of angle information on the shadows detected by a combination of the optical units of the different sensor units and 2) a combination of pieces of angle information on the shadows detected by a combination of the optical units of the same sensor units.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a coordinate input apparatus configuredto detect a pointed position on a coordinate input region, a controlmethod adapted to control the coordinate input apparatus, and a programadapted to perform the control method.

2. Description of the Related Art

There are coordinate input apparatuses used to input coordinatesdesignated by pointers (for example, a dedicated inputting pen, and afinger) to control computers connected thereto and to write characters,graphics, and so on.

Hitherto, various types of touch panels have been proposed or becomecommercially available as the coordinate input apparatuses of this kind.The touch panels are widely used because operations of terminals, suchas a personal computer, can easily be directed on the screen withoutusing special instruments.

There are various coordinate input methods, such as a method using aresistive film and a method using an ultrasonic wave. For example, U.S.Pat. No. 4,507,557 discusses a coordinate input method using light andalso discusses the following configuration. That is, a retroreflectingsheet is provided outside a coordinate input region. Illumination unitsconfigured to illuminate objects with light, and light-receiving unitsconfigured to receive light are disposed at corner ends of thecoordinate input region. The angle between a shielding object, such as afinger, which shields light in the coordinate input region, and each ofthe light receiving units is detected by using the illumination unit andthe light receiving unit. According to results of the detection, thepointed position of the shielding object is determined.

Also, Japanese Patent Application Laid-Open Nos. 2000-105671 and2001-142642 discuss coordinate input apparatuses each of which has aretroreflecting member configured around a coordinate input region, andwhich detects the coordinates of a part (light-shielded part), at whichretroreflected light is shielded.

Among these apparatuses, the apparatus discussed in Japanese PatentApplication Laid-Open No. 2000-105671 detects a peak of the intensity oflight received by the light-receiving unit, which peak appears at aposition corresponding to a light-shielded part and is caused by ashielding object, by performing a computing operation, such as adifferentiation, on waveforms. Thus, this apparatus detects the angle ofthe light-shielded part with respect to the light-receiving unit. Then,this apparatus calculates the coordinates of the shielding objectaccording to a detection result. Also, the apparatus discussed inJapanese Patent Application Laid-Open No. 2001-142642 detects one endand the other end of a light-shielded part by comparison with a specificlevel pattern, and then detects the center of these coordinates.

Incidentally, the methods of calculating the coordinates of a lightshielding position, which are discussed in U.S. Pat. No. 4,507,557 andJapanese Patent Application Laid-Open Nos. 2000-105671 and 2001-142642,are hereunder referred to simply as the light shielding methods.

In the coordinate input apparatus according to such a light shieldingmethod, especially, in a case where the coordinate input region has alarge size, there have been demands for facilitating a plurality ofoperators to contemporaneously input, thereby providing a more efficientconference. Thus, a coordinate input apparatus supporting a plurality ofcontemporaneous inputs has been contrived.

Japanese Patent Application Laid-Open Nos. 2002-055770 and 2003-303046,and Japanese Patent Registration No. 2896183 discuss techniques ofdetecting angles of a plurality of light-shielded parts by each singlelight-receiving sensor, calculating several input coordinate candidatesfrom a combination of the angles detected by each of the sensors, andfurther detecting actual inputted coordinates from the input coordinatecandidates that have resulted from a contemporaneously input of aplurality of coordinates.

For example, in a case where a two point input mode is employed, thecoordinates of four points are calculated at a maximum as inputcoordinate candidates. Among the four points, two points, thecoordinates of which are actually inputted, are determined, so that thecoordinates of the two points are outputted. That is, this determinationis to discriminate actual input coordinates from false input coordinatesamong a plurality of input coordinate candidates, and to subsequentlydetermine final input coordinates. Hereunder, this determination isreferred to as “true or false determination.”

Japanese Patent Application Laid-Open No. 2003-303046 and JapanesePatent Registration No. 2896183 discuss the following techniques aspractical methods of performing this true or false determination. Thatis, first and second sensors are provided at both ends of one side of aconventional coordinate input region to be spaced apart by a distancesufficient to precisely calculate coordinates of a pointed positionwithin the coordinate input region. In addition, a third sensor isprovided at a position between the first and second sensors to also bespaced apart from the first and second sensors by a distance sufficientto precisely calculate coordinates of a pointed position within thecoordinate input region. Also, according to angle information from thethird sensor, which information differs from angle information from eachof the first and second sensors, the true or false determination is madeon a plurality of pieces of angle information, which are detected by thefirst and second sensors.

Meanwhile, a method of disposing a plurality of sensor units around acoordinate input region at predetermined intervals and causing theplurality of sensor units to observe substantially the same directionand substantially the same region has been discussed to reduce thechance of, even when a plurality of light-shielded shadows overlap, oneof the shadows from being detected to be completely hidden in the othershadow. Also, a method of detecting, when a plurality of shadowsoverlap, a direction, in which each of the shadows is present, byobserving one of end portions of each of the shadows has been discussed.

The coordinate input apparatuses according to the aforementioned lightshielding methods essentially can detect four coordinate candidatepoints that include two real images and two virtual images, for example,in a case where two input operations are concurrently performed,regardless of the configurations of the apparatuses.

However, the methods of performing true or false determinations todetermine coordinate candidate points as actual input points from fourcoordinate candidate points have drawbacks.

For instance, the methods discussed in Japanese Patent ApplicationLaid-Open No. 2003-303046 and Japanese Patent Registration No. 2896183have drawbacks in that the field of view of the third sensor isinsufficient to stably perform a true or false determination, that itcan be difficult due to constraints on the apparatus to install thethird sensor by sufficiently securing the field of view to alwaysperform a true or false determination without an error, and that in acase where a fourth sensor is additionally provided to supplement thefield of view that the third sensor does not sufficiently assure, anoperation of matching detection values obtained by the sensors iscomplicated.

Also, in the case of the method of reducing the chance of, even when aplurality of light-shielded shadows overlap, one of the shadows frombeing detected to be completely hidden in the other shadow, accuracy ofthe true or false determination is deteriorated when one of the sensorsobserves the overlap of a plurality of shadows associated with actualinput points. Disturbances and various fluctuations can result inerroneous true-or-false determinations. In this case, the apparatus candetect erroneous coordinates of a position that can be difficultunlikely in normal conditions.

SUMMARY OF THE INVENTION

An exemplary embodiment is directed to a coordinate input apparatuscapable of detecting a plurality of concurrently inputted coordinateswith good accuracy, to a control method adapted to control thecoordinate input apparatus, and a program adapted to implement thecontrol method.

In one exemplary embodiment, a coordinate input apparatus, which isconfigured to detect a position pointed on a coordinate input region,includes first and second sensor units, each associated with one end ofan edge of the coordinate input region, where the first and secondsensor units each have at least two optical units, wherein the at leasttwo optical units includes a light projecting unit configured to projectlight onto the coordinate input region and a light receiving unitconfigured to receive incoming light, a detection unit configured todetect angle information representing directions of shadows, which areareas light-shielded by pointing performed by two pointing means,according to a light amount distribution, which is obtained from theoptical units of the first and second sensor units, on the regionincluding the shadows, and a calculation unit configured to calculatecoordinates of positions pointed by the two pointing means by using 1) acombination of pieces of angle information on the shadows detected by acombination of the optical units of the different sensor units, and 2) acombination of pieces of angle information on the shadows detected by acombination of the optical units of a same sensor unit.

In another exemplary embodiment, a method of controlling a coordinateinput apparatus configured to detect a position pointed on a coordinateinput region by using first and second sensor units, each associatedwith one end of an edge of one side of the coordinate input region,wherein the first and second sensor units each have at least two opticalunits, wherein the at least two optical units including a lightprojecting unit configured to project light onto the coordinate inputregion and a light receiving unit configured to receive incoming light,includes a detection step of detecting angle information representingdirections of shadows, which are areas light-shielded by pointingperformed by two pointing means, according to a light amountdistribution, which is obtained from the optical units of the first andsecond sensor units, on the region including the shadows, and acalculation step of calculating coordinates of positions pointed by thetwo pointing means by using 1) a combination of pieces of angleinformation on the shadows detected by a combination of the opticalunits of the different sensor units and 2) a combination of pieces ofangle information on the shadows detected by a combination of theoptical units of a same sensor unit

In still another exemplary embodiment, program configured to implementcontrol of a coordinate input apparatus configured to detect a positionpointed on a coordinate input region by using first and second sensorunits. The first and second sensor units are provided in the vicinity ofan associated end of both ends of one side of the coordinate inputregion and has two optical units including a light projecting unitconfigured to project light onto the coordinate input region. Includedis a light receiving unit configured to receive incoming light, furtherincluded is a program code configured to perform a detection step ofdetecting angle information representing directions of shadows, whichare areas light-shielded by pointing performed by two pointing means,according to a light amount distribution. The light amount is obtainedfrom the optical units of the first and second sensor units, on theregion including the shadows, using a program code configured to performa calculation step of calculating coordinates of positions pointed bythe two pointing means by using 1) a combination of pieces of angleinformation on the shadows detected by a combination of the opticalunits of the different sensor units and 2) a combination of pieces ofangle information on the shadows detected by a combination of theoptical units of a same sensor unit.

At least one exemplary embodiment is directed to a coordinate inputapparatus capable of detecting a plurality of concurrently inputtedcoordinates with good accuracy, and also provides a control methodadapted to control the coordinate input apparatus, and a program adaptedto implement the control method.

Further features of the present invention will become apparent from thefollowing detailed description of exemplary embodiments with referenceto the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate exemplary embodiments of theinvention.

FIG. 1 is a view illustrating the external appearance of a coordinateinput apparatus according to a first exemplary embodiment of the presentinvention;

FIG. 2 is a view illustrating a configuration of a sensor unit accordingto the first exemplary embodiment in detail;

FIG. 3A is a view illustrating an optical configuration of a sensor unitaccording to the first exemplary embodiment;

FIG. 3B is a view illustrating an optical configuration of a sensor unitaccording to the first exemplary embodiment;

FIG. 3C is a view illustrating an optical configuration of a sensor unitaccording to the first exemplary embodiment;

FIG. 4 is a view illustrating a configuration of a control/arithmeticunit according to the first exemplary embodiment in detail;

FIG. 5 is an explanatory view illustrating an optical configuration ofthe coordinate input apparatus according to the first exemplaryembodiment;

FIG. 6 is a flowchart illustrating a coordinate calculation processperformed by the coordinate input apparatus according to the firstexemplary embodiment;

FIG. 7 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIGS. 8A and 8B are graphs illustrating light intensity distributionsobtained from sensor units by performing input operations illustrated inFIG. 7;

FIG. 9 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 10 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 11 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 12 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIGS. 13A and 13B are graphs illustrating light intensity distributionsobtained from sensor units by performing input operations illustrated inFIGS. 11 and 12;

FIG. 14 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 15 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 16 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 17 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIGS. 18A and 18B are graphs illustrating light intensity distributionsobtained from sensor units by performing input operations illustrated inFIGS. 14 and 15;

FIG. 19 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 20 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 21 is an explanatory view illustrating a coordinate calculationmethod according to the first exemplary embodiment;

FIG. 22 is a flowchart illustrating a coordinate calculation process ina detection state [2] of the first exemplary embodiment in detail;

FIG. 23 is a flowchart illustrating a coordinate calculation process ina detection state [2] of a second exemplary embodiment of the presentinvention in detail;

FIG. 24 is an explanatory view illustrating a coordinate calculationmethod according to the second exemplary embodiment; and

FIG. 25 is an explanatory view illustrating a coordinate calculationmethod according to the second exemplary embodiment.

DETAILED DESCRIPTION OF THE EMBODIMENTS

The following description of at least one exemplary embodiment is merelyillustrative in nature and is in no way intended to limit the invention,its application, or uses.

Processes, techniques, apparatus, and materials as known by one ofordinary skill in the relevant art may not be discussed in detail butare intended to be part of the enabling description where appropriate,for example the fabrication of charged coupling devices (CCD) andlenses.

In all of the examples illustrated and discussed herein any specificvalues, for example an angular range of view are not limited by thevalues in the examples. Thus, other examples of the exemplaryembodiments could have different values.

Notice that similar reference numerals and letters refer to similaritems in the following figures, and thus once an item is defined in onefigure, it may not be discussed for following figures.

Exemplary embodiments of the invention will be described in detail belowwith reference to the drawings.

First Exemplary Embodiment

FIG. 1 is a view illustrating the external appearance of a coordinateinput apparatus according to a first exemplary embodiment of the presentinvention.

In FIG. 1, reference numerals 1L and 1R designate sensor units, each ofwhich has a light projecting unit and a light receiving unit. In thefirst exemplary embodiment, the sensor units 1L and 1R are disposedalong a line generally parallel to an X-axis of a coordinate inputeffective region 3 serving as a coordinate input surface, as illustratedin this figure. The sensor units 1L and 1R are also disposed at thepositions symmetrical with respect to a Y-axis, and are spaced apart bya predetermined distance. The sensor units 1L and 1R are connected to acontrol/arithmetic unit 2, and are adapted to receive control signalsfrom the control/arithmetic unit 2, and to transmit detection signals tothe control/arithmetic unit 2.

Reference numeral 4 designates a retroreflecting member, which can havea retroreflecting surface that reflects incoming light to an arrivaldirection. The retroreflecting member 4 is provided on each of threeouter sides of the coordinate input effective region 3, as illustratedin FIG. 1. Each of the retroreflecting members 4 retroreflects lightrays projected from the left sensor unit 1L and the right sensor unit 1Rwithin a range of an angle of substantially 90° toward the sensor units1L and 1R, respectively.

Incidentally, each of the retroreflecting members 4 microscopically hasa three-dimensional structure. For example, a retroreflecting tape ofthe bead type, or a retroreflecting tape adapted to causeretroreflection by regularly arranging corner cubes by machining can bethe retroreflecting member 4.

Light retroreflected by the retroreflecting members 4 isone-dimensionally detected by the sensor units 1L and 1R, and datarepresenting the light amount distribution of the reflected light istransmitted to the control/arithmetic unit 2.

The coordinate input effective region 3 can be utilized as aninteractive input device when formed as the screen of a display device,such as a PDP, a rear projector, or an LCD panel.

With such a configuration, when input-pointing is performed on thecoordinate input effective region 3 by a pointing unit (a pointingmeans), such as a finger, or a pointer, light projected from thelight-projecting units is shielded, so that a light-shielded part isformed. Because the light-receiving units of the sensor units 1L and 1Rcannot detect light coming from that light-shielded part, that is, lightreflected by the retroreflection. Consequently, a direction, the lightcoming from which cannot be detected, can be determined. The pointingmeans in the exemplary embodiments can be any type of device forpointing a coordinate input and/or can be a finger (a person's finger).

Thus, the control/arithmetic unit 2 detects a plurality oflight-shielded ranges of a part, on which the input positioningperformed by the pointer according to changes in light amount detectedby the left sensor unit 1L and the right sensor unit 1R. Then, thecontrol/arithmetic unit 2 calculates directions (or angles) of the endportions of the light-shielded ranges corresponding to the sensor units1L and 1R according to pieces of end portion information, which piecescorrespond to the light-shielded ranges. In a case where the pointer hasa signal transmitting unit, a pen signal receiving unit 5 receives a pensignal outputted from the pointer.

Then, the control/arithmetic unit 2 determines data obtained from thelight-shielded ranges, which are used in the coordinate calculations,according to the numbers of the detected light-shielded ranges. Also,the control/arithmetic unit 2 geometrically calculates a coordinatevalue indicating the light-shielded position of the pointer on thecoordinate input effective region 3 according to the calculateddirections (or angles), and information on the distance between thesensor units 1L and 1R. The control/arithmetic unit 2 outputs coordinatevalues to an external apparatus, such as a host computer, connected tothe display device through an interface 7 (for example, a USB interface,or an IEEE1394 interface).

Thus, operations of the external terminal, for example, operations ofdrawing a line on the screen, and of operating an icon displayed on thescreen of the display device are enabled by the pointer.

Detailed Description of Sensor Units 1L and 1R

Next, the configuration of each of the sensor units 1L and 1R isdescribed below by referring to FIG. 2. Incidentally, as describedabove, each of the sensor units 1L and 1R roughly includes alight-projecting unit and a light-receiving unit.

FIG. 2 is a view illustrating the detailed configuration of the sensorunit according to the first exemplary embodiment of the presentinvention.

Referring to FIG. 2, reference numerals 101A and 101B designate infraredLEDs adapted to emit infrared light. The infrared LEDs 101A and 101Bproject light to the retroreflecting members 4 by using light-projectinglenses 102A and 102B within a range of an angle of substantially 90degrees. The light-projecting unit in each of the sensor units 1L and 1Ris implemented by the infrared LEDs 101A and 101B and thelight-projecting lenses 102A and 102B. Thus, each of the sensor units 1Land 1R includes two light-projecting units.

Then, infrared light rays projected by the light-projecting units areretroreflected by the retroreflecting members 4 in the arrivaldirections. The light-receiving units in the sensor units 1L and 1Rdetect the retroreflected light rays.

Each of the light-receiving units has a one-dimensional line CCD 104provided with a shield member 105 adapted to limit the field of view oflight rays and to serve as an electrical shield. Also, each of thelight-receiving units has light-receiving lenses 106A and 106B (forinstance, fθ-lenses) serving as a condenser optical system, diaphragms108A and 108B adapted to substantially limit an incident direction ofincident light, and infrared filters 107A and 107B adapted to reduceunnecessary light (disturbance light), such as visible light, from beingincident thereupon.

Then, the light rays reflected by the retroreflecting members 4 arefocused on a surface of a detection element 110 of the line CCD 104through the infrared filters 107A and 107B and the diaphragms 108A and108B by the light-receiving lenses 106A and 106B. Thus, each of thesensor units 1L and 1R can include two light-receiving units.

Members 103 and 109 are adapted to respectively serve as an upper hood103 and lower hood 109, on which optical components forming thelight-projecting units and light-receiving units are provided, and arealso adapted to reduce light projected by the light-projecting unitsfrom directly being incident upon the light-receiving units, or cuttingoff external light.

Although the diaphragms 108A and 108B are integrally molded on the lowerhood 109 in the first exemplary embodiment, the diaphragms 108A and 108Bcan be formed as separate components. Also, positioning units adapted toalign the diaphragms 108A and 108B and the light-receiving lenses 106Aand 106B can be provided at the side on the upper hood 103, so that aconfiguration adapted to facilitate the alignment of the light-receivingunits with the light-projecting centers of the light-projecting units(that is, a configuration in which all principal optical components aredisposed only on the upper hood 103) can also be implemented.

FIG. 3A is a view illustrating an assembled state of the sensor unit 1Lor 1R shown in FIG. 2, which is viewed from the front direction (thatis, a direction perpendicular to the coordinate input surface). Asillustrated in FIG. 3A, the two light-projecting units in the sensorunit 1L or 1R are disposed to be spaced apart from each other by apredetermined distance d so that directions of principal rays aresubstantially parallel to each other, and are also disposed to projectlight within the range of an angle of substantially 90 degrees by usingthe light-projecting lenses 102A and 102B.

FIG. 3B is a cross-sectional view illustrating the sensor unit 1L or 1Rof a portion indicated by thick arrows in FIG. 3A. Light, 102L, emittedby the infrared LED 101A or 101B is projected by using thelight-projecting lens 102A or 102B to the retroreflecting members 4 as alight beam, whose direction can be limited in some cases to which issubstantially parallel to the coordinate input surface.

Meanwhile, FIG. 3C is a view illustrating the state in which theinfrared LEDs 101A and 101B, the light-projecting lenses 102A and 102B,and the upper hood 103 in FIG. 3A are removed when viewed from the frontdirection (that is, a direction perpendicular to the coordinate inputsurface).

In the first exemplary embodiment, the light-projecting units andlight-receiving units are disposed (see FIG. 3B) to be stacked in thedirection perpendicular to the coordinate input effective region 3serving as the coordinate input surface. The light-projecting units andlight-receiving units are configured so that the emission center of eachlight-projecting unit coincides with a reference position (correspondingto a reference point position used to measure an angle, and the positionof the diaphragm 108A or 108B in the first exemplary embodiment, thatis, the intersection of light rays in FIG. 3C) of each light-receivingunit, when viewed from the front direction (a direction perpendicular tothe coordinate input surface).

Thus, as described above, the two light-projecting units are provided tobe spaced apart from each other by the predetermined distance d so thatthe directions of principal rays are substantially parallel to eachother. Consequently, the two light-receiving units are also provided tobe spaced apart from each other by the predetermined distance, in thisnon limiting example d the same amount, so that the optical axes (thatis, the optical symmetric axes) are substantially parallel to eachother.

A light ray, which is projected by each light-projecting unit and issubstantially parallel to the coordinate input surface, that is, lightray projected in the range of an angle of substantially 90 degrees in anin-plane direction, is retroreflected by the retroreflecting members 4in the arrival direction of light. This light is focused and imaged onthe surface of the detection element 110 of the line CCD 104 through theinfrared filter 107A or 107B, the diaphragm 108A or 108B, and thelight-receiving lens 106A or 106B.

Thus, an output signal of the line CCD 104 represents a light amountdistribution corresponding to an angle of incidence of reflected light.Therefore, the pixel number of each of the pixels of the line CCD 104 isrepresented by angle information.

The distance L between the light-projecting unit and the light-receivingunit shown in FIG. 3B is assumed to have a value sufficiently smallerthan the distance from the light-projecting unit to the retroreflectingmember 4. Thus, even when the distance L is provided therebetween,sufficient retroreflected light can be detected by each of thelight-receiving units.

As described above, the sensor unit 1L or 1R adopts an arrangementhaving at least two light-projecting units and two light-receiving unitsfor respectively detecting light projected by these light-projectingunits (in the first exemplary embodiment, two pairs of light-projectingunits and light-receiving units) In the first exemplary embodiment, theleft-side portion of the detection element 110 linearly arranged on theline CCD 104, which is a part of the light-receiving units, is used as afocusing region of the first light-receiving unit. The right-sideportion of the detection element 110 is used as a focusing region of thesecond light-receiving unit. With this configuration, the components arecommonized. However, the present invention is not limited to such aconfiguration. Line CCDs can be individually provided to thelight-receiving units.

Description of Control/Arithmetic Unit

The control/arithmetic unit 2 and each of the sensor units 1L and 1Rexchange mainly CCD control signals for the line CCD 104 in thelight-receiving units, CCD clock signals and output signals, and drivesignals for the infrared LEDs 101A and 101B in the light-projectingunits.

The configuration of the control/arithmetic unit 2 is described below byreferring to FIG. 4.

FIG. 4 is a block view illustrating the configuration of thecontrol/arithmetic unit 2 according to the first exemplary embodiment ofthe present invention in detail.

The CCD control signals are outputted from an arithmetic control circuit(CPU) 21 including a one-chip microcomputer thereby to set the shuttertiming of the line CCD 104, and to control an operation of outputtingdata.

The arithmetic control circuit (e.g., CPU) 21 operates in response toclock signals from a clock generation circuit (CLK) 22. The CCD clocksignals are transmitted from the clock generation circuit (CLK) 22 tothe sensor units 1L and 1R, and are also inputted to the arithmeticcontrol circuit 21 to achieve various control operations insynchronization with the line CCDs 104 in the sensor units. The LEDdrive signals used to drive the infrared LEDs 101A and 101B in thelight-projecting units are supplied from the arithmetic control circuit21 to the infrared LEDs 101A and 101B in the light-projecting units ofthe associated sensor units 1L and 1R through an LED drive circuit (notshown).

Detection signals outputted from the line CCDs 104 in thelight-receiving units of the sensor units 1L and 1R are inputted to anA/D converter 23 and are converted into digital values under the controlof the arithmetic control circuit 21. The converted digital values arestored in a memory 132, and are used to calculate angles of thepointers. Coordinate values are calculated from the calculated angles,and are outputted to an external terminal through the serial interface 7(for example, a USB interface, an IEEE1394 interface, or an RS232Cinterface and any other interface as known by one of ordinary skill inthe relevant art).

In a case where a pen is used as the pointer, a pen signal receiver 5adapted to receive a pen signal from the pen outputs a digital signalgenerated by demodulating the pen signal. Then, the digital signal isinputted to a sub-CPU 24 serving as a pen signal detection circuit thatanalyzes the pen signal, and outputs a result of analysis to thearithmetic control circuit 21.

Detailed Description of Optical Configuration of Sensor Units 1L and 1R

FIG. 5 is an explanatory view illustrating the optical configuration ofthe coordinate input apparatus according to the first exemplaryembodiment of the present invention.

FIG. 5 illustrates, the configuration of the left sensor unit 1L. Theright sensor unit 1R has substantially the same features as those of theleft sensor unit 1L, except that it is symmetric to the left sensor unit1L with respect to the Y-axis in FIG. 5, and the description thereof isomitted.

As described above, the sensor unit 1L has a pair of light-projectingunits and a pair of light-receiving units. The optical axes thereof(that is, the optically symmetric axes respectively corresponding tolight rays 151 and 161) are disposed to substantially be parallel toeach other, and to be spaced apart from each other by the predetermineddistance d. The sensor unit 1L is disposed so that a sensor surfacethereof is inclined to one side of the coordinate input effective region3 by an angle θ_(s).

The light-projecting range of one light-projecting unit (or thedetection angle range of one light-receiving unit) in the sensor unit 1Lis defined by light rays 152 and 153, and that of the otherlight-projecting unit is defined by light rays 162 and 163.

The sensor unit 1R has two pairs of optical units that correspond to apair of light-projecting units and a pair of light-receiving units (thatis, optical units R1 and R2).

The effective visual field range of two optical units (that is, thelight-projecting unit and the light-receiving unit) defined by the lightrays 152 and 153 or the light rays 162 and 163 is substantially 90degrees for the non-limiting example. The effective visual field rangecan vary for example it can be set to be 100 degrees. However, in a casewhere the effective visual field range is set and designed to be wider,the optical distortion of optical components (for instance, lenses)forming the optical units becomes larger and can make it less useful forforming an inexpensive optical system.

Thus, for obtaining pointed position information of the pointershielding the projected light, at the respective light-receiving units,to set the coordinate input effective region within a region defined bythe light rays 152 and 163. Consequently, in a case where a region 171is set to be the coordinate input effective region, as illustrated inFIG. 5, the two light-receiving units in the sensor unit 1L can detectthe light-shielded position of the pointer (a light-shielding object) inthe region 171.

However, this setting can cause a problem in that, for example, ahousing frame determined by the relation between a housing 172 of thecoordinate input apparatus, which incorporates the components, and thecoordinate input region 171 becomes large. Thus, the size of thecoordinate input apparatus becomes large, as compared with an operableregion. To facilitate the reduction coordinate input apparatus, at leastone exemplary embodiment reduces not only the size of the sensor unit 1Lor 1R but the predetermined distance d between the two pairs of opticalunits (that is, the light-projecting units and the light-receivingunits), which is defined by the light rays 151 and 161.

In the coordinate input apparatus according to the first exemplaryembodiment, to reduce the size of the housing frame determined by thecoordinate input effective region 3 and the housing 172 as much aspossible, the effective field of view of one light-receiving unit in thesensor unit 1L (1R) can include the entire coordinate input effectiveregion 3. Also, a region defined by a region 173 shown in FIG. 5 of theother light-receiving unit is set to be outside the effective visualfield.

Meanwhile, the distance d is set so that a projected component of thedistance d, as viewed from the direction of the pointer, that is, thevalue of d*cos (θ_(L)-θ_(S)) is substantially equal to a radius of thepointer when the pointer is placed at the left or right end portion orthe top portion of the coordinate input effective region 3. θ_(L) is anangle measured from a left vertical line passing through L1 to the pointof interest (see FIG. 19).

Thus, the apparatus is configured so that the pointer existing in theregion 173 shown in FIG. 5 is prevented from being completely includedin an area defined between the light rays 151 and 161 shown in FIG. 5.

The first exemplary embodiment can acquire data representing lightintensity distributions obtained from the optical units L1, L2, R2, andR1 shown in FIG. 5. Then, the first exemplary embodiment calculates thenumber of shadows and the positions (or angles) of the shadows, whichare obtained by the optical units, according to the light intensitydistributions. Also, the first exemplary embodiment sequentially selectsfour combinations (L1, R1), (L1, R2), (L2, R1), and (L2, R2) of theoptical unit L1 or L2 of the sensor unit 1L and the optical unit R1 orR2 of the sensor unit 1R.

Subsequently, the first exemplary embodiment determines coordinatecandidate points respectively corresponding to the combinations of theoptical units and also determines the situation of overlaps among thecoordinate candidate points. Then, the first exemplary embodimentselects an appropriate combination of the optical units thereamong.Consequently, the first exemplary embodiment determines actual inputpoints from the coordinate candidate points (that is, performs what iscalled a true or false determination). Finally, the first exemplaryembodiment determines two input coordinates.

Hereinafter, the four combinations (L1, R1), (L1, R2), (L2, R1), and(L2, R2) of the optical units are referred to as the “LR-optical unitcombinations” or the “LR-combinations.”

Next, a coordinate calculation process according to the first exemplaryembodiment is described by referring to FIG. 6.

FIG. 6 is a flowchart illustrating the coordinate calculation processperformed by the coordinate input apparatus according to the firstexemplary embodiment.

First, in step S1, data representing the light intensity distributionsin the optical units L1, L2, R1, and R2 is acquired. Subsequently, insteps S2 to S5, data representing light intensity distributionscorresponding to the LR-combinations is sequentially selected from theacquired data representing the light intensity distributions. Then, acoordinate candidate point determination process is performed on theselected data representing the light intensity distributions. Thus, thecombinations of the numbers of shadows, which correspond to theLR-combinations, can be determined in steps S2 to S5.

Next, a coordinate calculation process is performed according to aresult of the coordinate candidate point determination process in stepsS6 to S17.

Then, the following conditions are obtained according to thecombinations of shadows, which correspond to the LR-combinations.

Condition A (1-1) in which both of the optical units detect only oneshadow.

Condition B (2-1) in which one of the optical units of one of the sensorunits detects two shadows, and in which one of the optical units of theother sensor unit detects only one overlapping shadow.

Condition C (2-2) in which both of one of the optical units of one ofthe sensor units and one of the optical units of the other sensor unitdetect two shadows.

Condition D (0-0) in which each of the optical units detects no shadows.

In the expression [*a−*b] described in the following description, “*a”represents the number of shadows detected by the optical unit thatdetects shadows of the number larger than the number of shadows detectedby the other optical unit of the LR-combination. Further, “*b”represents the number of shadows detected by the latter optical unit ofthe LR-combination. Therefore, the order relation between “*a” and “*b”is independent of the LR-combination of the optical units.

It is assumed in the first exemplary embodiment that in a case wherecertain input pointing is performed by the pointer in the firstexemplary embodiment, and where a shadow associated with the inputpointing is detected by one of the optical units, unless the detectedshadow and another shadow overlap, the shadow associated with the inputpointing can be detected by a substantial portion of the optical unitsother than the one of the optical units.

The following description of exemplary embodiments is made with theexception of a case where certain input pointing is performed, where oneof the optical units detects a shadow, and where one of the otheroptical units cannot detect the shadow due to differences in opticalcharacteristic conditions and to slight difference in detection-timingeven though the detected shadow overlaps with no other shadows.

The first exemplary embodiment determines which of the conditions A to Deach of the LR-combinations of the optical units corresponds to.According to results of this determination, the first exemplaryembodiment then determines a detection state of each of the opticalunits of the sensor units 1L and 1R, in which shadows are detected,among the following detection states.

Detection State [1] in which the condition [1-1] holds in the case ofeach of all of the LR-combinations.

Detection State [2] in which there are two of the LR-combinations, forwhich the condition [2-2] holds.

Detection State [3] wherein there is one LR-combination, for which thecondition [2-2] holds, and wherein there is another LR-combination, forwhich the condition [2-1] holds.

Detection State [4] in which there are two of the LR-combinations, forwhich the condition [2-1] holds.

Then, the first exemplary embodiment determines in steps S6 to S8, S10and S11 a detection state of each of the optical units, in which thenumber of shadows is detected. Subsequently, the first exemplaryembodiment performs coordinate calculation in steps S13 to S16 accordingto the following coordinate calculation methods preliminarily definedcorresponding to the determined detection states, respectively.Subsequently, the first exemplary embodiment outputs results of thecoordinate calculation in step S17. Meanwhile, if no detection state isdetermined, the first exemplary embodiment determines in step S9 or S12that the detection of coordinates can be difficult. Then, the process isfinished.

As illustrated in FIG. 6, the detection states [1] to [4] can bedetermined in this descending priority order. For example, in a casewhere the LR-combinations meet the detection states [3] and [4], thedetection state [3] can be chosen to be determined.

Hereinafter, coordinate calculation methods [1] to [4] are described indetail.

Coordinate Calculation Method [1] (Step S13: Detection State [1])

In a case where the condition [1-1] holds in the case of all of theLR-combinations in the detection state [1], a single input is performed.In this case, there is no need for a true or false determination.

In this case, coordinate calculation can be performed by using theoptical unites of any of the LR-combinations. For example, coordinatecalculation is conducted by performing a coordinate calculation process(1), which will be described later, and by using the optical units ofthe LR-combination (L1, R1).

Coordinate Calculation Method [2] (Step S14: Detection State [2])

In the detection state [2], there are two or more of the LR-combinations(L1, R1), (L1, R2), (L2, R1), and (L2, R2), for which the condition[2-2] holds.

Two of these LR-combinations are selected. Then, four coordinatecandidate points obtained from the selected two LR-combinations arecompared with one another.

Hereinafter, practical examples of the detection state

are described by being classified into three patterns. The threepatterns are defined as detection states [2]-1, [2]-2, and [2]-3.

First, in the case of the detection state [2]-1 (see FIG. 7), theoptical units R1 and R2 of the sensor unit 1R observe shading waveforms(or light intensity distributions) each having valleys respectivelycorresponding to two shadows, which are shown in FIGS. 8A and 8B.

For example, in a case where P12 and P21 designate actual input pointsamong the four coordinate candidate points P11, P12, P21 and P22 shownin FIG. 7, the waveforms detected by the optical units R1 and R2 of thesensor unit 1R are compared with each other. A direction of a straightline (P12-P21) determined by these two points is relatively closer to adirection, in which the optical unit R1 is placed, than a direction inwhich the optical unit R2 is placed. That is, two shadows observed bythe optical unit R1 are closer to each other than those observed by theoptical unit R2. The distance between the observed two shadowscorresponds to what is called a parallax.

That is, in a case where the candidate points P12 and P21 are actualinput points, as is seen from FIG. 8A, the two shadows detected from thewaveform observed by the optical unit R1 seem to be closer to each otherthan those detected from the waveform observed by the optical unit R2.

Meanwhile, in a case where the candidate points P11 and P22 shown inFIG. 7 are actual input points, as is seen from FIG. 8B, the two shadowsdetected from the waveform observed by the optical unit R2 seem to becloser to each other than those detected from the waveform observed bythe optical unit R1.

That is, the true or false determination performed on the fourcoordinate candidate points shown in FIG. 7 can be achieved bydetermining which of the waveforms respectively observed by the opticalunits R1 and R2 corresponds to a smaller distance between the twoshadows.

This holds true for the waveforms observed by the optical unit L1 of thesensor unit 1L shown in FIG. 7.

That is, the true or false determination can be achieved by determiningwhich of the two optical units of each of the sensor units observes twoshadows formed closer to each other.

Next, the true or false determination performed on the combinations ofthe four coordinate candidate points in the detection states illustratedin FIG. 9 (the detection state [2]-2) and FIG. 10 (the detection state[2]-3) is described below.

First, in the case of the detection state [2]-2 (see FIG. 9), a true orfalse determination performed by using the sensor unit 1L is describedbelow.

For example, in a case where the candidate points P11 and P22 are actualinput points, it is apparent from FIG. 9 that two shadows observed bythe optical unit L2 are formed closer to each other than those observedby the optical unit L1.

In a case where the candidate points P12 and P21 are actual inputpoints, it is apparent from FIG. 9 that two shadows observed by theoptical unit L1 are formed closer to each other than those observed bythe optical unit L2.

Thus, the true or false determination can be performed on the fourcoordinate candidate points by using the sensor unit 1L.

Next, the true or false determination performed on the four coordinatecandidate points by using the sensor unit 1R is described below.

For example, in a case where the candidate points P11 and P22 are actualinput points, it is apparent from FIG. 9 that two shadows observed bythe optical unit R2 are formed closer to each other than those observedby the optical unit R1.

Conversely, in a case where the candidate points P12 and P21 are actualinput points, two shadows observed by the optical unit R1 are notnecessarily formed closer to each other than those observed by theoptical unit R2.

Therefore, in this case, the true or false determination cannot beperformed on the four coordinate candidate points by using the sensorunit 1R.

Next, in the case of the detection state [2]-3 (see FIG. 10), a true orfalse determination performed by using the sensor unit 1R is describedbelow.

For example, in a case where the candidate points P11 and P22 are actualinput points, it is apparent from FIG. 10 that two shadows observed bythe optical unit R2 are formed closer to each other than those observedby the optical unit R1.

In a case where the candidate points P12 and P21 are actual inputpoints, it is apparent from FIG. 10 that two shadows observed by theoptical unit R1 are formed closer to each other than those observed bythe optical unit R2.

Consequently, the true or false determination can be performed on thefour coordinate candidate points by using the sensor unit 1R.

Next, the true or false determination performed on the four coordinatecandidate points by using the sensor unit 1L is described below.

For example, in a case where the candidate points P12 and P21 are actualinput points, it is apparent from FIG. 10 that two shadows observed bythe optical unit L1 are formed closer to each other than those observedby the optical unit L2.

Conversely, in a case where the candidate points P11 and P22 are actualinput points, two shadows observed by the optical unit L2 are notnecessarily formed closer to each other than those observed by theoptical unit L1.

Therefore, in this case, the true or false determination cannot beperformed on the four coordinate candidate points by using the sensorunit 1L.

Now, it is summarized below whether the true or false determination canbe achieved in each of the detection states.

In the case of the detection state [2]-1 (see FIG. 7), the true or falsedetermination can be achieved by using the sensor unit 1L. Also, thetrue or false determination can be achieved by using the sensor unit 1R.

In the case of the detection state [2]-2 (see FIG. 9), the true or falsedetermination can be achieved by using the sensor unit 1L. Conversely,the true or false determination can be difficult when the sensor unit 1Ris used.

In the case of the detection state [2)-3 (see FIG. 10), the true orfalse determination can be difficult when the sensor unit 1L is used.Conversely, the true or false determination can be achieved by using thesensor unit 1R.

Incidentally, causes for this result are generalized below.

Although principles of the true or false determination according to atleast one exemplary embodiment have been described, importantprerequisites for the true or false determination according to at leastone exemplary embodiment are that the larger the angle θL at the side ofthe sensor unit 1L of the candidate point becomes, the candidate pointis placed closer to the sensor unit 1R, among the four coordinatecandidate points, and that similarly, the larger the angle θR at theside of the sensor unit 1R of the candidate point becomes, the candidatepoint is placed closer to the sensor unit 1L.

For brevity of description, let L1 and R1 denote the approximatepositions of the sensor units 1L and 1R, respectively (however,reference numerals L1 and R1 can designate the positions of the opticalunits L2 and R2, or can denote the positions of midpoints of the twooptical units of the sensor units). The distances among the fourcoordinate candidate points P11, P12, P21, and P22 and the sensor units1L and 1R shown in FIG. 7 should meet the following inequalities.L1-P22<L1-P11  (11)L1-P12<L1-P21  (12)R1-P22<R1-P11  (13)R1-P21<R1-P12  (14)

In a case where all of the inequalities (11) to (14) are satisfied, thetrue or false determination can be achieved in both of the case of usingthe sensor unit 1L and the case of using the sensor unit 1R.

In a case where the inequalities (11) and (12) are satisfied, the trueor false determination can be achieved in the case of using the sensorunit 1L.

In a case where the inequalities (13) and (14) are satisfied, the trueor false determination can be achieved in the case of using the sensorunit 1R.

In the case shown in FIG. 7, all of the inequalities (11) to (14) aresatisfied. Thus, the true or false determination can be achieved in bothof the case of using the sensor unit 1L and the case of using the sensorunit 1R.

In the case shown in FIG. 9, both of the inequalities (11) and (12) aresatisfied. Thus, the true or false determination can be achieved in thecase of using the sensor unit 1L. Meanwhile, in the case shown in FIG.9, the inequality (14) is not satisfied. Thus, the true or falsedetermination cannot be performed in the case of using the sensor unit1R.

In the case shown in FIG. 10, both of the inequalities (13) and (14) aresatisfied. Thus, the true or false determination can be achieved in thecase of using the sensor unit 1R. Meanwhile, in the case shown in FIG.10, the inequality (11) is not satisfied. Thus, the true or falsedetermination cannot be performed in the case of using the sensor unit1L.

As described above, according to at least one exemplary embodiment, inthe case of the detection state [2], the sensor unit to be used in thetrue or false determination is selected according to whether each of theinequalities (11) to (14) is satisfied. The coordinate input apparatuscan achieve the true or false determination without errors by inhibitingthe sensor unit, the position of which does not satisfy at least one ofthe inequalities (11) to (14), from being selected.

Then, the coordinates of the points P11 and P12, or the points P12 andP21, are calculated by performing a coordinate calculation process (1),which will be described later, by using the optical units of thecombination selected according to the true or false determination.

Coordinate Calculation Method [3] (Step S15: Detection State [3])

In the detection state [3], there are the LR-combination, for which thecondition [2-2] holds, and the LR-combination, for which the condition[2-1] holds.

Hereinafter, the coordinate calculation method performed in a case, inwhich the combination (L1, R2) corresponds to the condition [2-2] and inwhich the combination (L1, R1) corresponds to the condition [2-1], isdescribed as a practical example by referring to FIGS. 11 and 12.

In the case of the detection state [3], the following process can beperformed.

First, in the detection state [3], there is one LR-combinationcorresponding to the condition [2-2]. Thus, four coordinate candidatepoints have already been determined in this stage. Then, actual inputpoints can be determined by applying the true or false determination tothe four coordinate candidate points. For instance, for thisnon-limiting example it is assumed that each of the optical units L1 andL2 of the sensor unit 1L observes two shadows, that only one of theoptical units of the sensor unit 1R observes shadows which overlap, andthat the other optical unit of the sensor unit 1R observes two shadows(see FIGS. 11 and 12).

In the case of a condition shown in FIG. 13A, in which two shadows aredetected by the optical unit R2, and in which one shadow is detected bythe optical unit R1, among four coordinate candidate points P11, P12,P21 and P22 determined by the optical unit R2 and one of the opticalunits of the sensor unit 1L, where the candidate points P12 and P21 areactual input points. If the candidate points P11 and P22 were actualinput points, shadows observed by the optical unit R1 cannot overlap tothereby become a single shadow.

Similarly, in the case of a condition shown in FIG. 13B, in which twoshadows are detected by the optical unit R1, and in which one shadow isdetected by the optical unit R2, among four coordinate candidate pointsP11, P12, P21 and P22 determined by the optical unit R1 and one of theoptical units of the sensor unit 1L, where the candidate points P12 andP21 are actual input points. If the candidate points P12 and P21 wereactual input points, shadows observed by the optical unit R2 cannotoverlap to thereby become a single shadow.

Thus, in the case of the detection state [3], when only one of the twooptical units of one of the sensor units detects shadows that overlap,the coordinates of the actual input point can be determined as follows.

First, in a case where only one of the two optical units of one of thesensor units detects shadows that overlap, let T and U denote the one ofthe optical units and the other optical unit of the same sensor unit,respectively.

In a case where the optical unit T is placed near to the other sensorunit (that is, the optical unit L2 or R2), two coordinates (that is, thecoordinates of the points P11 and P22) determined by shadows of twocombinations, which are respectively detected by the two optical unitsbelonging to the different sensor units and which respectivelycorrespond to an angle near to and an angle far from a direction of theother sensor unit, are regarded as two actual input coordinates.

Meanwhile, in a case where the optical unit T is placed far from theother sensor unit (that is, the optical unit L1 or R1), two coordinates(that is, the coordinates of the points P12 and P21) determined byshadows of two combinations, which are respectively detected by the twooptical units belonging to the different sensor units and whichrespectively correspond to a combination of an angle near to and anangle far from a direction of the other sensor unit and a combination ofan angle far from and an angle near to the direction of the other sensorunit, are regarded as two actual input coordinates.

Then, in the case shown in FIG. 11, the coordinates of the points P11,P12, P21, and P22 are calculated by performing a coordinate calculationprocess (2), which will be described later, by using the optical unitsof the combination (L1, R2). Also, in the case shown in FIG. 12, thecoordinates of the points PP1 and PP2 are calculated by performing acoordinate calculation process (1), which will be described later, byusing the optical units of the combination (L1, R1).

Then, among the points P11, P12, P21, and P22 shown in FIG. 11, one of acombination of coordinate candidate points (P11, P22) and a combinationof coordinate candidate points (P12, P21), which combination beingrelatively close to the points (PP1, PP2) shown in FIG. 12, is selectedand is determined as the combination of coordinates of two input points.

In the examples shown in FIGS. 11 and 12, the candidate points P12 andP21 can be determined as two input points according to actual inputdata.

Coordinate Calculation Method [4] (Step S16: Detection State [4])

In the detection state [4], there are no LR-combinations, for which thecondition [2-2] holds, and there are two LR-combinations, for which thecondition [2-1] holds.

Hereinafter, the coordinate calculation method performed in a case inwhich the combination (L1, R2) corresponds to the condition [2-1] andthe combination (L1, R1) corresponds to the condition [2-1] is describedas a practical example by referring to FIGS. 14 and 15.

As illustrated in FIG. 14, the candidate points PP1 and PP2 can bedetermined according to a coordinate calculation process (2), which willbe described later, by using the optical units of the combination (L1,R2). Also, as illustrated in FIG. 15, the candidate points PP1 and PP2can be determined according to the coordinate calculation process (1),which will be described later, by using the optical units of thecombination (L1, R1).

In this case, angles indicating directions of two virtual shadows thatoverlap are estimated from the overlapping shadows. According to theangles, the coordinates are calculated by a method related to that inthe case where two shadows are detected.

In a practical example, as illustrated in FIGS. 14 and 15, overlappingshadows are detected by both of the optical units R2 and R1.

In this example, four coordinate candidate points are calculated byusing a state detected by the optical unit R2 shown in FIG. 14.

First, it is assumed that information representing a diameter of theused pointer or a diameter of an end portion of the pointer ispreliminarily set. Alternatively, it is assumed that the diameter of theused pointer or the diameter of an end portion of the pointer has beencalculated at a past detection of coordinates. Also, the sizes of theshadows of the pointer, which are calculated according to theinformation representing the diameter thereof are assumed to be Δθ1 andΔθ2 shown in FIG. 16. Thus, angles θR1′ and θR2′ indicating thesubstantially central positions of the virtual shadows can be calculatedas follows.θR1′=θR _(—) f+Δθ1/2  (15)θR2′=θR _(—) e−Δθ2/2  (16)

Thus, as illustrated in FIG. 17, the four coordinate candidate pointsP11, P12, P21, and P22 can be established by the combination of theoptical units L1 and R2. Then, the true or false determination isperformed on these coordinate candidate points.

As illustrated in FIG. 17, in a case where the candidate points P12 andP21 are actual input points, among the four coordinate candidate pointsP11, P12, P21, and P22 determined by the angle, which indicates thedirection of the virtual shadow corresponding to the optical unit R2,and the two shadows corresponding to the optical unit L1, theoverlapping rate of shadows corresponding to the optical unit R1 becomeslarger. In contrast, in a case where the candidate points P11 and p22are actual input points, the overlapping rate of shadows correspondingto the optical unit R1 becomes smaller.

That is, in a case where the widths ΔθR1_fe and ΔθR2_fe of theoverlapping shadows respectively corresponding to the optical units R1and R2 are defined as shown in FIGS. 18A and 18B, it is apparent thatthe smaller the values of the widths ΔθR1_fe and ΔθR2_fe become, thehigher the overlapping rate of shadows becomes.

However, for example, in a case where the candidate points P12 and P21are actual input points, the overlapping rate of shadows correspondingto the optical unit R1 is higher, as illustrated in FIG. 18A. That is,the value of the width ΔθR1_fe is observed to be relatively smaller thanthe observed value of the width ΔθR2_fe.

In a case where the candidate points P11 and P22 are actual inputpoints, the overlapping rate of shadows corresponding to the opticalunit R2 is higher, as illustrated in FIG. 18B. That is, the value of thewidth ΔθR2_fe is observed to be relatively smaller than the observedvalue of the width ΔθR1_fe.

That is, the true or false determination is achieved in the state [4]according to which of the values of the widths ΔθR1_fe and ΔθR2_fe, thatis, the values of ΔθR_fe, which respectively correspond to the opticalunits R1 and R2, is smaller.

Results of coordinate calculation in the case of one input point or twoinput points, which are obtained according to one of the aforementionedcoordinate calculation methods [1] to [4], are outputted to an externalterminal through a serial interface 7 and are displayed as a motion or atrajectory of a cursor in an output unit, such as an image displaydevice.

Next, the coordinate calculation processes (1) to (3) are described indetail below.

Coordinate Calculation Process (1)

Hereinafter, the coordinate calculation process (1) of calculatingcoordinates using the combination of the optical units L1 and R1 isdescribed by referring to FIG. 19.

Optical units provided at the outwardly left side and the outwardlyright side of the coordinate input effective region 3 in the sensorunits 1L and 1R, as viewed in FIG. 19, are the optical units L1 and R1,respectively. Optical units provided at the inwardly left side and theinwardly right side of the coordinate input effective region 3 in thesensor units 1L and 1R, as viewed in FIG. 19, are the optical units L2and R2, respectively.

Angle data obtained from each of the optical units is defined so that anangle in a downward Y-axis direction of an associated sensor unit is setto be 0, and that the angle increases in inward directions in aleft-right symmetric manner. Let P(L1), P(L2), P(R1), and P(R2)designate the coordinates of the positions of the optical units,respectively.

In a case where the coordinates are calculated according to the angledata obtained form the optical units of the combination (L1, R1), apoint O is set to be an origin. Also, the following functions X_(t) andY_(t) adapted to determine an X-direction and a Y-direction, asillustrated in FIG. 19, are defined.X_(t)(θL−45,θR−45)=(tan(θL−45)−tan(θR−45))/[2*(1−tan(θL−45)*tan(θR−45))]  (17)Y_(t)(θL−45,θR−45)=(−1)*[(1−tan(θL−45))*(1−tan(θR−45))/(2*(1−tan(θL−45)*tan(θR−45)))−0.5]  (18)

According to the definitions of the functions X_(t) and Y_(t), thecoordinates of the point P1(X, Y) are obtained as follows by setting thepoint O shown in FIG. 19 as an origin.X=DLR*X _(t)(θL−45,θR−45)  (19)Y=DLR*Y _(t)(θL−45,θR−45)  (20)

Coordinate Calculation Process (2)

Hereinafter, the coordinate calculation process (2) of calculatingcoordinates using the combination of the optical units L2 and R1 isdescribed by referring to FIG. 20.

In FIG. 20, let P′ designate a position pointed by the pointer. Also,let S′ denote an intersection of a straight line (P(L1)-P(R1)) and astraight line (P(L2)-P′).

The calculation of the coordinates of the position P′ from thepositional relation among the three points S′, P(R1), and O′ shown inFIG. 20 is equivalent to that of the coordinates of the point P from thepositional relation among the three points P(L1), P(R1), and O shown inFIG. 19.

Let (O′→P′)_(x) designate a vector O'P′. Also, let (O′→P′)_(x) and(O′→P′)_(y) denote an X-component and a Y-component of this vector.Thus, the X-component and the Y-component of this vector are obtained asfollows by using the equations (17) and (18).

(O′→P′)_(x)=(DLR−ΔD)*X _(t)(θL−45,θR−45)  (21)(O′→P′)y=(DLR−ΔD)*Y _(t)(θL−45,θR−45)  (22)

Incidentally, the following equations are obtained from FIG. 20.ΔD=S _(x) +S _(y)*tan(θL)  (23)Incidentally, S _(x) =d*cos(θ_(S)),S _(y) =d*sin(θ_(S))  (24)

Also, as is apparent from FIG. 20, the following equations are obtained.(O′→O′)_(x) =ΔD/2  (25)(O′→O′)_(y)=(−1)*ΔD/2  (26)

Thus, the coordinates of the position P′ can be calculated as theX-component and the Y-component of (O→P′)=(O→O′)+(O′→P′) by setting thepoint O to be the origin.

Similarly, in a case where the coordinates are calculated by using theoptical units L1 and R2 of the combination, the coordinates cansimilarly be calculated by changing the sign of the aforementionedX-component.

Coordinate Calculation Process (3)

Hereinafter, the coordinate calculation process (3) of calculatingcoordinates using the combination of the optical units L2 and R2 isdescribed by referring to FIG. 21.

The calculation of the coordinates of the position P″ from thepositional relation among the three points P(L2), P(R2) and O″ shown inFIG. 21 is equivalent to that of the coordinates of the point P from thepositional relation among the three points P(L1), P(R1), and O shown inFIG. 19. Let (O″→P″) designate a vector O″P″. Also, let (O″→P″)_(x) and(O″→P″)_(y) denote an X-component and a Y-component of this vector.Thus, the X-component and the Y-component of this vector are obtained asfollows by using the equations (17) and (18).(O″→P″)_(x)=(DLR−2*S _(x))*X _(t)(θL−45,θR−45)  (27)(O″→P″)_(y)=(DLR−2*S _(x))*Y _(t)(θL−45,θR−45)  (28)

Also, as is apparent from FIG. 20, the following equations are obtained.(O→O″)_(x)=0  (29)(O→O″)_(y)=(−1)*(S _(x) +S _(y))  (30)

Thus, the coordinates of the position P″ can be calculated as theX-component and the Y-component of (O→P″)=(O→O″)+(O″→P″) by setting thepoint O to be the origin.

As described above, the coordinates can be calculated corresponding to asubstantial portion of the LR-combinations in the first exemplaryembodiment.

Thus, the first exemplary embodiments determines the optical unit thatdetects the shadows, which are observed to be closer to each other thanthe shadows detected by the other of the two optical units of both orone of the sensor units. As illustrated in FIG. 8A, the first exemplaryembodiment assumes the following parameters as the parameter indicatingthe degree of closeness of two shadows:

a first parameter ΔθR_MIDDLE (a first angle corresponding to thedistance between the substantial middles of the shadows);

a second parameter ΔθR_INSIDE (a second angle corresponding to thedistance between the inner ends of the shadows);

a third parameter ΔθR_OUTSIDE (a third angle corresponding to thedistance between the outer ends of the shadows); and

a fourth parameter that is equal to (the second angle/the third angle)or to (the second angle/the first angle)

In a case where one of these parameters is relatively small, as comparedwith the other parameters, it is determined that the two shadowsobserved by the optical unit to be used are close to each other. Then,the true or false determination is performed by using the optical unithaving made this determination.

Especially, the true or false determination using these four kinds ofparameters is used in the coordinate calculation process in theaforementioned detection state [2].

Hereinafter, the coordinate calculation process performed in thedetection state [2] is described in detail by referring to FIG. 22. Thatis, the coordinate calculation process performed in a case, in whichthere are two or more of LR-combinations, for which the condition [2-2]holds, are obtained among the LR-combinations (L1, R1), (L1, R2), (L2,R1), and (L2, R2), is described below in detail. FIG. 22 is a flowchartillustrating the coordinate calculation process in the detection state[2] of the first exemplary embodiment in detail.

Terms described in FIG. 22 or FIG. 23 showing a second exemplaryembodiment (to be described later) are defined as follows.

Distance (*1−*2): a distance between points *1 and *2.

Total_kj: a comprehensive true or false determination.

Lkj: a true or false determination by using the sensor unit 1L.

Rkj: a true or false determination by using the sensor unit 1R.

Unit_kj: a true or false determination by using one of the selectedsensor units.

ST: a true or false determination using input points P11 and P22 asactual coordinates.

CR: a true or false determination using input points P11 and P22 asactual coordinates.

NG: a true or false determination is impossible.

Min(θcnt(*)): a minimum value of θcnt(*) in all of the optical units

In the first exemplary embodiment, according to whether the inequalities(11) to (14) are satisfied, it is determined whether the true or falsedetermination using the sensor units is achieved. Thus, the followingprocess illustrated in FIG. 22 is performed.

First, in step S101, it is determined whether the true or falsedetermination using the sensor unit 1L can be achieved. In this step, itis determined whether the inequalities (11) and (12) (L1-P22<L1-P11 andL1-P12<L1-P21) are satisfied.

If the inequalities (11) and (12) are not satisfied (NO in step S101),the process advances to step S105, where it is determined that the trueor false determination using the sensor unit 1L can be difficult(Lkj=NG). Conversely, if the inequalities (11) and (12) are satisfied(YES in step S101), the process advances to step S102.

In step S102, it is determined which of the optical units L1 and L2 ofthe sensor unit 1L observes shadows to be relatively closer to eachother than shadows observed by the other optical unit. In this step,this determination is according to the magnitude of the angle (thesmaller the magnitude of the angle is, the closer to each other theshadows become). The magnitude of the angle is represented by theexpression ΔθL_* (“*” is one of “OUTSIDE”, “INSIDE” and “MIDDLE”). Thus,as is seen from FIGS. 8A and 8B, the degree of closeness of the twoshadows is determined according to one of ΔθL_OUTSIDE, ΔθL_INSIDE,ΔθL_MIDDLE, (ΔθL_INSIDE/ΔθL_MIDDLE), and (ΔθL_INSIDE/ΔθL_OUTSIDE).

If ΔθL1_*>ΔθL2_* (YES in step S102), the process advances to step S103.The equation Lkj=ST represents a result of determining whether the trueor false determination using the sensor unit 1L can be achieved.Conversely, if the inequality (ΔθL1_*>ΔθL2_*) is not satisfied (NO instep S102) the process advances to step S104. The equation Lkj=CRrepresents a result of determining whether the true or falsedetermination using the sensor unit 1L can be achieved.

Similarly, to determine whether the true or false determination usingthe sensor unit 1R can be achieved, steps S106 to S110, which correspondto steps S101 to S105, are performed. In step S106, it is determinedwhether the inequalities (13) and (14) (R1-P21<R1-P12 and R1-P22<RL-P1)are satisfied. In step S107, it is determined whether the followinginequality ΔθR1_*>ΔθR2_* is satisfied.

In step S111, a comprehensive true or false determination, that is afinal true or false determination is performed according to results ofthe determination on which the true or false determination using thesensor unit 1L or 1R can be achieved. In this case, St, CR, or NG isdetermined as a value representing a result of the comprehensive true orfalse determination Total_kj according to values of Lkj and Rkj, whichare results of the true or false determination by using the sensor unit1L and the true or false determination by using the sensor unit 1R andare shown in step S111 in the flowchart.

If Total_kj=ST, the candidate points P11 and P22 are employed as actualinput points and the coordinates of these points are calculated in stepS112. If Total_kj=CR, the candidate points P12 and P21 are employed asactual input points and the coordinates of these points are calculatedin step S113. If Total_kj=NG, it is determined in step S114 that thedetection of the coordinates can be difficult.

As described above, in the light-shielding type coordinate inputapparatus according to the first exemplary embodiment, the sensor unitsare configured in the vicinities of both ends of one side of thecoordinate input effective region. In each of the sensor units, the twooptical units adapted to detect angles corresponding to angleinformation, which represents the directions of shadows or imagesgenerated by causing the pointer to enter the coordinate input effectiveregion, are disposed apart from each other by a predetermined parallax(or distance).

The coordinates of the positions of the pointers in a case, in which thepointers concurrently enter the coordinate input effective region, arecalculated by using the combination of pieces of angle information onangles of shadows detected by the two optical units of the differentsensor units and the combination of pieces of angle information onangles of shadows detected by the two optical units of the same sensorunit.

In the first exemplary embodiment, especially, in a case where shadowsassociated with two input points do not overlap even when observed byany of the optical units, the sensor unit to be used to perform a trueor false determination is determined according to predeterminedconditions (or the relation in distance among the coordinate candidatepoints). The true or false determination is performed by using resultsof the detection by the two optical units of the selected sensor unitand by also using the parallax.

Consequently, regardless of whether detected shadows overlap, the trueor false determination can stably be performed. In a case where aplurality of inputs can concurrently be performed, a coordinatecalculation operation of the coordinate input apparatus can bestabilized and assured.

Second Exemplary Embodiment

A second exemplary embodiment is an application of the first exemplaryembodiment.

In the coordinate calculation process in the detection state [2]described in the foregoing description of the first exemplaryembodiment, in a case where there are two or more of the LR-combinations(L1, R1), (L1, R2), (L2, R1), and (L2, R2), for which the condition[2-2] holds, the sensor unit to be used to perform the true or falsedetermination is selected according to the inequalities (11) to (14).Then, the coordinate calculation process is performed by using theselected sensor unit.

In a case where each of the inequalities (11) to (14) is not satisfiedin the detection states illustrated in FIGS. 7, 9, and 10, thearrangement of the four coordinate candidate points has distinctfeatures.

In the case illustrated in FIG. 7 (the detection state [2]-1), theinequality (11) is satisfied, so that there is no deviation in thearrangement of the four coordinate candidate points.

In the case illustrated in FIG. 9 (the detection state [2]-2), the fourcoordinate candidate points constitute a flat rectangle. An angledetected by one of the sensor units 1L and 1R is close to zero (that is,the coordinate candidate points are close to the left side or the rightside of the coordinate input effective region 3, as viewed in thisfigure).

For example, in a case where two shadows detected by the sensor unit 1Lare closer to each other, as compared with shadows detected by thesensor unit 1R, the true or false determination using the sensor unit 1Lis achieved. However, the true or false determination using the sensorunit 1R is not performed. Conversely, in a case where the two shadowsdetected by the sensor unit 1R are closer to each other, as comparedwith shadows detected by the sensor unit 1L, the true or falsedetermination by using the sensor unit 1R is achieved. However, the trueor false determination using the sensor unit 1L is not performed.

In the case illustrated in FIG. 10 (the detection state [2]-3), the fourcoordinate candidate points are concentrated in the vicinity of acentral part of the top side of the coordinate input effective region 3.In this case, the angles detected by the sensor units 1L and 1R arerelatively close to 90 degrees.

In this case, sometimes, the points P11 and P22 do not satisfy theinequalities (11) to (14). For instance, in the case illustrated in FIG.10, the point P22 is positioned far from the sensor unit 1L, as comparedwith the point 11. Thus, the true or false determination using thesensor unit 1L cannot be achieved.

On the other hand, the true or false determination using the sensor unit1R can be achieved. It is geometrically obvious that the points P11 andP22 do not simultaneously satisfy the inequalities (11) and (13) andthat the points P11 and P22 satisfy one of the inequalities (11) and(13) at all times.

Therefore, in the case illustrated in FIG. 10, only the coordinatecandidate points P11 and P22 are detected. Then, it is determinedaccording to the coordinate candidate points P11 and P22 whether each ofthe inequalities (11) and (13) is satisfied. Subsequently, according toa result of the determination, the true or false determination and thecoordinate calculation are performed.

Hereinafter, a coordinate calculation process in the detection state [2]of the second exemplary embodiment is described in detail by referringto FIG. 23.

FIG. 23 is a flowchart illustrating the coordinate calculation processin the detection state [2] of the second exemplary embodiment in detail.

First, in step S201, it is determined whether the true or falsedetermination using the sensor unit 1L can be achieved. In this step, itis determined whether the inequality (ΔθL1_*>ΔθL2_*) is satisfied,instead of whether the inequalities (11) and (12) (L1-P22<L1-P11 andL1-P12<L1-P21) are satisfied.

If the inequality ΔθL1_*>ΔθL2_* is satisfied (YES in step S201), theprocess advances to step S202. The equation Lkj=ST represents a resultof determining whether the true or false determination using the sensorunit 1L can be achieved. Conversely, if the inequality (ΔθL1_*>ΔθL2_*)is not satisfied (NO in step S201), the process advances to step S203.The equation Lkj=CR represents a result of determining whether the trueor false determination using the sensor unit 1L can be achieved.

Similarly, to determine whether the true or false determination usingthe sensor unit 1R can be achieved, steps S204 to S206, which correspondto steps S201 to S203, are performed. In step S204, it is determinedwhether the inequality (ΔθR1_*>ΔθR2_*) is satisfied, instead of whetherthe inequalities (13) and (14) (R1-P21<R1-P12 and R1-P22<R1-P11) aresatisfied.

In step S207, a comprehensive true or false determination, that is afinal true or false determination is performed according to results ofthe determination on which the true or false determination using thesensor unit 1L or 1R can be achieved. In this case, ST, CR, or NG isdetermined as a value representing a result of the comprehensive true orfalse determination Total_kj according to values of Lkj and Rkj, whichare results of the true or false determination by using the sensor unit1L and the true or false determination by using the sensor unit 1R andare shown in step S207 in the flowchart.

If Total_kj=ST, the candidate points P11 and P22 are employed as actualinput points and the coordinates of these points are calculated in stepS216. If Total_kj=CR, the candidate points P12 and P21 are employed asactual input points and the coordinates of these points are calculatedin step S217. If Total_kj=NG, the process advances to step S208.

Thus, if it is determined in step S207 that the result of the true orfalse determination using the sensor unit 1L is the same as the resultof the true or false determination using the sensor unit 1R, the resultof the true or false determination is settled. This is the state (thedetection state (2]-1) shown in FIG. 7.

Conversely, if the result of the true or false determination using thesensor unit 1L differs from the result of the true or falsedetermination using the sensor unit 1R, the result of the comprehensivetrue or false determination is once set so that Total_kj=NG. In thiscase, one of the true or false determination using the sensor unit 1Land the true or false determination using the sensor unit 1R iserroneous. That is, this is the state shown in FIG. 9 or 10 (that is,the detection state [2]-2 or (2)-3. Thus, to specify the erroneous trueor false determination, a process subsequent to step S208 is performed.

Incidentally, θcnt(*) is defined as follows.θcnt(L1)=(θL1−aP11+θL1−aP22)/2θcnt(L2)=(θL2−aP11+θL2−aP22)/2θcnt(R1)=(θR1−aP11+θL1−aP22)/2θcnt(R2)=(θR2−aP11+θL1−aP22)/2

Suffixes L1, L2, R1, and R2 added to θ indicate that angles E arerespectively detected by the optical units L1, L2, R1, and R2. Also,aP11 and aP22 represent angles respectively associated with thecoordinate candidate points P11 and P22. Thus, an angle designated byaP22 is larger than an angle indicated by aP11 (that is, the directionof aP22 is closer to the top side of the coordinate input effectiveregion 3).

In step S208, the angles θcnt(*) corresponding to the optical units L1,L2, R1, and R2 are calculated. In step S209, a minimum valueMin(θcnt(*)) of θcnt(*) is selected. Subsequently, in step S210, it isdetermined whether Min(θcnt(*)) is less than a predetermined angle θA(for example, 45 degrees). If Min(θcnt(*)) is less than thepredetermined angle A (YES in step S210), the state is deduced to be thedetection state [2]-2. Then, the process proceeds to step S212.

In step S212, a determination is performed to select the sensor unitwhose optical units detect the shadows which are closer to each otherthan shadows detected by the other sensor unit. The optical unit isselected by comparing ΔθL with ΔθR. Practically, an optical unit(Unit_kj), which satisfies the inequality ΔθL<ΔθR, is selected from theoptical unit 1L (Unit_kj=L) and the optical unit 1R (Unit_kj=R).

Then, in step S213, the true or false determination using the opticalunit selected by the determination in step S212 is definitelydetermined. Thereafter, the process proceeds to step S216 or S217according to a result of the comprehensive true or false determination.

On the other hand, if it is determined in step S210 that Min(θcnt(*)) isequal to or more than the predetermined angle θA (NO in step S210), theprocess advances to step S211, wherein it is determined whetherMin(θcnt(*)) is equal to or more than the predetermined angle θB (forexample, 60 degrees). If it is determined that Min(θcnt(*)) is largerthan the predetermined angle θB, the state is deduced to be thedetection state [2]-3. Then, the process advances to step S214.

In step S214, the sensor unit satisfying the inequality (11) or (13)(Distance Unit_kj−P22>Distance Unit_kj-P11) is selected.

Then, in step S215, the true or false determination using the opticalunit selected by the determination in step S214 is definitely determinedas a final comprehensive true or false determination. Thereafter,according to a result of the comprehensive true or false determination,the process proceeds to step S216 or S217.

On the other hand, if it is determined in step S211 that Min(θcnt(*)) isless than the predetermined angle θB (NO in step S211), that is,θA<Min(θcnt(*))<θB, it is determined in step S218 that the true or falsedetermination can be difficult. Consequently, it is definitelydetermined that the detection of the coordinates can be difficult.

As described above, according to the second exemplary embodiment, thesensor unit to be used to perform the true or false determination isselected according to a predetermined condition (that is, thepredetermined relation between the angle and the coordinate candidatepoint) in the apparatus according to the first exemplary embodiment in acase where shadows associated with two input points do not overlap evenwhen observed from any of the optical units. Then, the true or falsedetermination is performed by using the result of the detection by thetwo optical units of the selected sensor unit and also using theparallax.

Consequently, regardless of whether detected shadows overlap, the trueor false determination can stably be performed. In a case where aplurality of inputs can concurrently be performed, a coordinatecalculation operation of the coordinate input apparatus can bestabilized and assured.

Third Exemplary Embodiment

In the foregoing description of the first exemplary embodiment and thesecond exemplary embodiment, the methods of performing the true or falsedetermination, which is performed in a case where essentially, shadowsdo not overlap in the light intensity distribution observed by theselected sensor unit have been described. In the following descriptionof the third exemplary embodiment, a true or false determination methodperformed in a case, in which shadows are essentially observed tooverlap on the light intensity distribution observed by the selectedsensor unit, is described.

The following conditions obtained according to the combinations ofshadows, which correspond to the LR-combinations, are studied.

Condition A (1-1) in which both of the optical units detects only oneshadow.

Condition B1 (2-1) in which one of the optical units of one of thesensor units detects two shadows, and in which one of the optical unitsof the other sensor unit detects only one overlapping shadow.

Condition C1 (2-2) in which both of the sensor units detect two shadows.

Condition D (0-0) in which each of the optical units detects no shadows.

The third exemplary embodiment determines which of the conditions A, B1,C1, and D each of the LR-combinations of the optical units correspondsto. According to results of this determination, the third exemplaryembodiment then determines a detection state of each of the opticalunits of the sensor units 1L and 1R, in which shadows are detected,among the following detection states.

Although the detection states, in which the number of shadows isdetected, are related to those in the first exemplary embodiment, thecoordinate calculation methods respectively corresponding to thedetection states [1] to [4] differ from those in the first exemplaryembodiment. Thus, the differences between the third exemplary embodimentand the first exemplary embodiment are described hereinbelow.

First, in the detection states [1] and [3], the coordinate calculationmethods [1] and [3] are performed, similarly to the first exemplaryembodiment.

In the detection state [2], the coordinate calculation method [2]according to the third exemplary embodiment, which method differs fromthe coordinate calculation method [2] according to the first exemplaryembodiment, is performed. Hereinafter, the coordinate calculation method[2] according to the third exemplary embodiment is described.

Coordinate Calculation Method [2]

In the detection state [2], there are two or more of the LR-combinations(L1, R1), (L1, R2), (L2, R1), and (L2, R2), for which the condition[2-2] holds.

Two of these LR-combinations are selected. Then, four coordinatecandidate points obtained from the selected two LR-combinations arecompared with one another.

Hereinafter, a case, in which the combination (L1, R1) and thecombination (L2, R1) corresponds to the condition [2-2], is described asa practical example by referring to FIGS. 24 and 25.

As illustrated in FIG. 24, the candidate points P11, P12, P21, and P22can be determined according to the aforementioned coordinate calculationprocess (1) using the optical units of the combination (L1, R1).Similarly, as illustrated in FIG. 25, the candidate points P′11, P′12,P′21, and P′22 can be determined according to the aforementionedcoordinate calculation process (2) using the optical units of thecombination (L2, R1).

The values of the coordinates of the four candidate points obtainedcorresponding to the LR-combination (L1, R1) are compared with those ofthe coordinates of the four candidate points obtained corresponding tothe LR-combination (L2, R1).

Among these coordinate candidate points, the coordinate candidate pointsbased on actually inputted coordinates, which respectively correspond toboth of the LR-combinations, have the same coordinates in principle. Onthe other hand, the coordinate candidate points, which are not based onthe actually inputted coordinates (what are called the coordinatecandidate points forming a virtual image) and respectively correspond toboth of the LR-combinations, have different coordinates due to theinfluence of offset of the positions of the optical units.

Thus, the coordinate values of the coordinate candidate points, whichare found by the comparison among the four coordinate candidate pointsobtained by using the LR-combinations to substantially be equal tocompared values, can be determined as those of true two input points.

In the case of examples shown in FIGS. 24 and 25, the candidate pointsP11 (P′11) and P22 (P′22) are determined as the two input pointsactually inputted.

Next, a coordinate calculation method [4] according to the thirdexemplary embodiment is described below.

Calculation Method [4]

In the detection state [4], there are no LR-combinations, for which thecondition [2-2] holds, and there are two LR-combinations, for which thecondition [2-1] holds.

Hereinafter, the coordinate calculation method performed in a case, inwhich the combination (L1, R2) corresponds to the condition [2-1] and inwhich the combination (L1, R1) corresponds to the condition [2-1], isdescribed as a practical example by referring to FIGS. 14 and 15.

As illustrated in FIG. 14, the candidate points PP1 and PP2 can bedetermined according to the aforementioned coordinate calculationprocess (2) by using the optical units of the combination (L1, R2).Also, as illustrated in FIG. 15, the candidate points P11 and P22 can bedetermined according to the aforementioned coordinate calculationprocess (1) by using the optical units of the combination (L1, R1).

Thus, the two input coordinates actually inputted can approximately bedetermined by using the optical units of either of the LR-combinations.

In a case where overlapping-shadows are observed, according to the thirdexemplary embodiment, the overlapping shadows can be arrangedapproximately linearly in the direction of an angle (θR_c) correspondingto a straight line passing through the centers of the overlappingshadows.

The direction of the overlapping shadows is that of the angle θR_ccorresponding to each of the optical units R1 and R2 shown in FIGS. 14,15, 18A and 18B.

Therefore, in either case, two points respectively corresponding to (θL1s, θR_c) and (θL2 s, θR_c) can be determined. However, in a case wherethe direction of the overlapping shadows is approximated by that of theangle θR_c corresponding to each of the optical units R1 and R2, as isapparent from FIGS. 14 and 15, the coordinates can be more accuratelydetermined by employing the light intensity distribution of the opticalunit R1 that detects the shadows corresponding to the two input points,so that the shadows are observed to closely overlap.

Practically, as is seen from FIG. 18A, the coordinates can moreaccurately be calculated by employing the angle OR_c obtained from thelight intensity distribution of the optical unit R1, instead ofemploying the angle OR_c obtained from the light intensity distributionof the optical unit R2.

In a case where the overlapping rate corresponding to the lightintensity distribution of the optical unit R2 is compared with thatcorresponding to the light intensity distribution of the optical unitR1, as illustrated in FIG. 18A, the light intensity distribution of theoptical unit corresponding to a smaller one of the widths ΔθR1_fe andΔθR2_fe of the overlapping shadows is employed as the light intensitydistribution corresponding to a larger overlapping rate.

Let V denote one of the optical units of one of the sensor units, whichdetects overlapping shadows that are associated with two inputscontemporaneously performed and that have a higher overlapping rate, acompared with shadows detected by the other optical unit. Then, twocoordinates determined by an angle determined by the center of theoverlapping shadows, which is detected by the optical unit V, and anangle of each of two shadows detected by one of the two optical units ofthe other sensor unit can be determined as two input coordinates.

Consequently, the coordinates of two points PP1 and PP2 can becalculated according to either of the combinations (L1, R2) and (L1, R1)of the optical units.

As is seen from FIGS. 14 and 15, higher precision coordinates can becalculated by using the optical units of the LR-combination, which causeshadows that more closely overlap, as compared with shadows caused byother LR-combinations.

Consequently, in the case of examples illustrated in FIGS. 14 and 15,the candidate points PP1 and PP2 shown in FIG. 15 can be determined asthe actual two input points.

Results of coordinate calculation in the case of one input point or twoinput points, which are obtained according to one of the aforementionedcoordinate calculation methods [1] to [4], are outputted to an externalterminal through the serial interface 7 and are displayed as a motion ora trajectory of a cursor in an output unit, such as an image displaydevice.

As described above, even in a case where shadows caused by two inputsoverlap when observed from one of the optical units in the apparatusaccording to the first exemplary embodiment, according to the thirdexemplary embodiment, accuracy of the true or false determination isdeteriorated. The accuracy of the true or false determination can beenhanced by utilizing the overlapping condition of the shadows.Consequently, regardless of whether detected shadows overlap, the trueor false determination can stably be performed. In a case where aplurality of inputs can concurrently be performed, a coordinatecalculation operation of the coordinate input apparatus can bestabilized and assured.

Fourth Exemplary Embodiment

A coordinate input apparatus according to a fourth exemplary embodimentcan be configured so that coordinate calculation is performed byselecting one of the coordinate calculation method [1] according to thefirst exemplary embodiment and the coordinate calculation method [4]according to the third exemplary embodiment in accordance with a purposeand a use. Similarly, a coordinate input apparatus according to a fourthexemplary embodiment can be configured so that coordinate calculation isperformed by selecting one of the coordinate calculation method [2]according to the first exemplary embodiment and the coordinatecalculation method [2] according to the third exemplary embodimentaccording to a purpose and a use.

As compared with the coordinate calculation method [4] according to thethird exemplary embodiment, the coordinate calculation method [4]according to the first exemplary embodiment is more generally describedas follows.

Shadows respectively associated with concurrently inputted two pointsare detected by both of two optical units (for instance, optical unitsR1 and R2) of a first sensor unit (for example, a sensor unit 1R) tooverlap with each other. Let T designates the optical unit adapted todetect the overlapping shadows having the overlapping rate that ishigher than the overlapping rate of shadows detected by the otheroptical unit. Let U denotes the latter optical unit.

In a case where an optical unit T (the optical unit R2 in this case) isplaced near to the other sensor unit, that is, a second sensor unit (forexample, a sensor unit 1L), two coordinates determined by a firstcombination of angles (a) and (b), which are defined below, and a secondcombination of angles (c) and (d), which are defined below, arecalculated as actual input coordinates.

The angle (a) is defined to correspond to one end portion of shadowsdetected by the optical unit T or U to overlap with each other, whichportion is nearer to the direction of the second sensor unit than theother end portion of the shadows.

The angle (b) is defined to correspond to the shadow that is detected byone of the optical units (for example, the optical units L1 and L2) andthat is nearer to the second sensor unit than the other optical unit.

The angle (c) is defined to correspond to one end portion of shadowsdetected by the optical unit T or U to overlap with each other, whichportion is farther away from the direction of the second sensor unitthan the other end portion of the shadows.

The angle (d) is defined to correspond to the shadow that is detected byone of the optical units (for example, the optical units L1 and L2) andthat is farther from the direction of the second sensor unit than theother optical unit.

On the other hand, in a case where an optical unit T (the optical unitR1 in this case) is placed far from the other sensor unit, that is, asecond sensor unit (for example, a sensor unit 1L), two coordinatesdetermined by a third combination of angles (e) and (f), which aredefined below, and a fourth combination of angles (g) and (h), which aredefined below, are calculated as actual input coordinates.

The angle (e) is defined to correspond to one end portion of shadowsdetected by the optical unit T or U to overlap with each other, whichportion is nearer to the direction of the second sensor unit than theother end portion of the shadows.

The angle (f) is defined to correspond to the shadow that is detected byone of the optical units (for example, the optical units L1 and L2) andthat is nearer to the second sensor unit than the other optical unit.

The angle (g) is defined to correspond to one end portion of shadowsdetected by the optical unit T or U to overlap with each other, whichportion is farther away from the direction of the second sensor unitthan the other end portion of the shadows.

The angle (h) is defined to correspond to the shadow that is detected byone of the optical units (for example, the optical units L1 and L2) andthat is farther away from the direction of the second sensor unit thanthe other optical unit.

Then, two coordinates determined by these combinations are calculated asactual input coordinates.

Although the exemplary embodiments have been described in detail in theforegoing description, the present invention can be embodied as, forexample, a system, an apparatus, a method, a program, or a storagemedium. Practically, the present invention can be applied to a systemincluding a plurality of devices, and to an apparatus constituted by asingle device.

Exemplary embodiments can also be implemented by supplying a softwareprogram (in the embodiment, a program corresponding to each offlowcharts illustrated in the figures), which implements the functionsof the aforementioned exemplary embodiments, directly or remotely to asystem or an apparatus, and reading and executing the supplied programcode by a computer of the system or the apparatus.

Thus, because the functions according to at least one exemplaryembodiment are implemented by a computer, the program code installed inthe computer also implements at least one exemplary embodiment. That is,exemplary embodiments also cover a computer program used to implementthe functions according to at least one exemplary embodiment.

In this case, in at least one exemplary embodiment the system or theapparatus has the functions of the program, the program can have anyform, such as an object code, a program executed by an interpreter, orscript data supplied to an operating system.

Example of storage media used to supply the program are a floppy(registered trademark) disk, a hard disk, an optical disk, amagneto-optical disk, a CD-ROM, a CD-R, a CD-RW, a magnetic tape, anon-volatile memory card, a ROM, and a DVD (a DVD-ROM and a DVD-R).

Additionally, the following method is employed to supply the program.That is, first, a client computer is connected to a website on theInternet using a browser of the client computer. Then, a computerprogram itself according to at least one exemplary embodiment or acompressed file of the program having an automatic installing functionis downloaded to a recording medium, such as a hard disk. Alternatively,the program according to at least one exemplary embodiment is suppliedby dividing the program code, which constitutes the program, into aplurality of files and by then downloading the files from different homepages. That is, at least one exemplary embodiment covers a WWW serveradapted to download, to a plurality of users, the program filesimplementing the functions according to at least one exemplaryembodiment by a computer.

Also, the functions according to at least one exemplary embodiment canbe implemented by encrypting the program according to at least oneexemplary embodiment, then storing the encrypted program on a storagemedium, such as a CD-ROM, subsequently distributing the storage mediumto users, then causing users, who meet predetermined requirements todownload decryption key information from a website through the Internet,and subsequently causing the users to decrypt the encrypted program byusing the key information, thereby to install the program in a computer.Alternatively, the functions according to the exemplary embodiments canbe implemented by executing a program read by the computer.Alternatively, an operating system running on the computer can performall or a part of actual processing, so that the functions of theaforementioned exemplary embodiments can be implemented by thisprocessing.

Additionally, after the program read from the storage medium is writtento a function expansion board inserted into the computer or to a memoryprovided in a function expansion unit connected to the computer, a CPUmounted on the function expansion board or the function expansion unitperforms all or a part of the actual processing, so that the functionsof the aforementioned exemplary embodiments can be implemented by thisprocessing.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all modifications, equivalent structures, and functions.

This application claims priority from Japanese Patent Application No.2005-118980 filed Apr. 15, 2005, which is hereby incorporated byreference herein in its entirety.

1. A coordinate input apparatus configured to detect a position on acoordinate input region, comprising: a first sensor unit and a secondsensor unit, each associated with one end of an edge of one side of thecoordinate input region, wherein the first and second sensor units eachhave at least two optical units, wherein the at least two optical unitsincludes a light projecting unit configured to project light onto thecoordinate input region and a light receiving unit configured to receiveincoming light; a detection unit configured to detect angle informationrepresenting directions of shadows, wherein shadows are areaslight-shielded by pointing performed by two pointing means, according toa light amount distribution, which is obtained from the optical units ofthe first and second sensor units, on the coordinate input regionincluding the shadows; and a calculation unit configured to calculatecoordinates of positions by using: 1) a combination of pieces of angleinformation on the shadows detected by a combination of the opticalunits of different sensor units; and 2) a combination of pieces of angleinformation on the shadows detected by a combination of the opticalunits of a same sensor unit.
 2. The coordinate input apparatus accordingto claim 1, wherein in a case where all of the shadows are detected bythe optical units so that none of the shadows overlap with each other,and where the calculation unit performs a calculation corresponding tothe optical units of the first sensor unit, wherein the calculation unitcalculates coordinates from at least one of: a) in a case that one oftwo angles based on positions of the shadows detected by the opticalunits of the first sensor unit, which is the angle of the shadow beingfar from a direction of the second sensor unit and being set to be afirst angle, and that one of two angles based on positions of theshadows detected by one of the optical units of the second sensor unit,which is the angle of the shadow being far from a direction of the firstsensor unit and being set to be a second angle, the calculation unitcalculates coordinates determined by the first angle and the secondangle as P1; b) in a case that one of two angles based on positions ofthe shadows detected by the optical units of the first sensor unit,which is the angle of the shadow being near to the direction of thesecond sensor unit and being set to be a first angle, and that one oftwo angles based on positions of the shadows detected by one of theoptical units of the second sensor unit, which is the angle of theshadow being near to the direction of the first sensor unit and beingset to be a second angle, the calculation unit calculates coordinatesdetermined by the first angle and the second angle as P2; c) in a casethat one of two angles based on positions of the shadows detected by theoptical units for the first sensor unit, which is the angle of theshadow being far from the direction of the second sensor unit and beingset to be a first angle, and that one of two angles based on positionsof the shadows detected by one of the optical units of the second sensorunit, which is the angle of the shadow being near to the direction ofthe first sensor unit and being set to be a second angle, thecalculation unit calculates coordinates determined by the first angleand the second angle as P3; and d) in a case that one of two anglesbased on positions of the shadows detected by the optical units for thefirst sensor unit, which is the angle of the shadow being near to thedirection of the second sensor unit and being set to be a first angle,and that one of two angles based on positions of the shadows detected byone of the optical units of the second sensor unit, which is the angleof the shadow being far from the direction of the first sensor unit andbeing set to be a second angle, the calculation unit calculatescoordinates determined by the first angle and the second angle as P4;and wherein in a case where one of the first and the second sensor unitsis selected according to a selection condition, where the selectedsensor unit is the first sensor unit, and where one of the two opticalunits of the first sensor unit, which detects that the detected twoshadows which are relatively close to each other, is set to be a firstoptical unit, and where the other optical unit is set to be a secondoptical unit, the coordinates P1 and P2 corresponding to the firstsensor unit, to which the first optical unit belongs, are determined tobe coordinates of the position pointed to by the pointing means, in acase that the first optical unit is in the first sensor unit and isplaced near to the second sensor unit, and the coordinates P3 and P4corresponding to the first sensor unit, to which the first optical unitbelongs, are determined to be coordinates of the position pointed to bythe pointing means, in a case that the first optical unit is in thefirst sensor unit and is placed far from the second sensor unit.
 3. Thecoordinate input apparatus according to claim 2, wherein the sensor unithaving the optical units that detects the two shadows, detects the twoshadows that are closest to each other.
 4. The coordinate inputapparatus according to claim 2, wherein the sensor unit having theoptical units that detects the two shadows, satisfy the followinginequalities: Distance (Ps-P2)<Distance (Ps-P1); and Distance(Ps-P3)<Distance (Ps-P4).
 5. The coordinate input apparatus according toclaim 2, wherein the calculation unit includes a determination unitconfigured to determine a close state in which the two shadows are closeto each other.
 6. The coordinate input apparatus according to claim 5,wherein the determination unit determines a close state of the twoshadows according to one of: a first angle corresponding to a distancebetween substantially middles of the two shadows; a second anglecorresponding to a distance between inner ends of the two shadows; athird angle corresponding to a distance between outer ends of the twoshadows; the second angle/the third angle; and the second angle/thefirst angle.
 7. The coordinate input apparatus according to claim 1,wherein in a case where only one of the two optical units of the firstsensor unit detects that the two shadows overlap, and where that one ofthe optical unit thereof is set to be the first optical unit, thecalculation unit calculates coordinates of positions pointed to by thetwo pointing means by using angles of the shadows, both of which areclose to directions of both the sensor units, and also using angles ofthe shadows, both of which are far from directions of both the sensorunits, among the shadows detected by the two optical units of the firstand second sensor units in a case that the first optical unit is placedat a side, which is near to the second sensor unit, in the first sensorunit, and wherein in a case where only one of the two optical units ofthe first sensor unit detects that the two shadows overlap, and wherethat one of the optical units thereof is set to be the first opticalunit, the calculation unit calculates coordinates of positions pointedto by the two pointing means by using two combinations of the shadows,one of which is close to the directions of both the sensor units, andthe other of which is far from the direction of both the sensor units,among the shadows detected by the two optical units of the first andsecond sensor units in a case that the first optical unit is placed at aside, which is far from the second sensor unit, in the first sensorunit.
 8. The coordinate input apparatus according to claim 1, whereinthe calculation unit calculates, in a case where each of the two opticalunits of the first sensor unit detects that the shadows overlap andwhere one of the optical units of the first sensor unit, which detectsthe shadows whose overlapping rate is larger than that of the shadowsdetected by the other optical unit of the first sensor unit, is set tobe the first optical unit, wherein coordinates of the positions pointedto by the two pointing means are calculated by using an anglecorresponding to a substantial center of the overlapping shadowsdetected by the first optical unit, and also using an angle of the twoshadows, which is detected by one of the two optical units of the secondsensor unit.
 9. The coordinate input apparatus according to claim 8,wherein the overlapping-rate is a ratio between angular widthsdetermined by a difference between an angle corresponding to one endportion of each of the overlapping shadows and an angle corresponding tothe other end portion thereof.
 10. The coordinate input apparatusaccording to claim 1, wherein in a case where each of two optical unitsof the first sensor unit detects that two shadows overlap with eachother, wherein one of the two optical units detecting the overlappingshadows, whose overlapping rate is larger, is set to be a first opticalunit, and where the optical unit detecting the overlapping shadows,whose overlapping rate is smaller, is set to be a second optical unit,wherein the calculation unit calculates coordinates from at least oneof: a) in a case that the first optical unit is placed at a side, whichis near to the second sensor unit, in the first sensor unit, thecalculation unit calculates coordinates of positions pointed by the twopointing means by using a first combination of 1) an angle correspondingto an end portion of the overlapping shadows detected by the first orsecond optical unit, which portion is near to a direction of the secondsensor unit, and 2) an angle of one of shadows detected by the twooptical units of the second sensor unit to be near to the direction ofthe second sensor unit, and by also using a second combination of 3) anangle corresponding to an end portion of the overlapping shadowsdetected by the first or second optical unit, which portion is far froma direction of the second sensor unit, and 4) an angle of one of shadowsdetected by the two optical units of the second sensor unit to be farfrom the direction of the second sensor unit, and b) in a case that thefirst optical unit is placed at a side, which is far from the secondsensor unit, in the first sensor unit, the calculation unit calculatescoordinates of positions pointed by the two pointing means by using athird combination of 5) an angle corresponding to an end portion of theoverlapping shadows detected by the first or second optical unit, whichportion is near to a direction of the second sensor unit, and 6) anangle of one of shadows detected by the two optical units of the secondsensor unit to be far from the direction of the second sensor unit, andby also using a fourth combination of 7) an angle corresponding to anend portion of the overlapping shadows detected by the first or secondoptical unit, which portion is far from a direction of the second sensorunit, and 8) an angle of one of shadows detected by the two opticalunits of the second sensor unit to be near to the direction of thesecond sensor unit.
 11. The coordinate input apparatus according toclaim 10, wherein the overlapping rate is a ratio between angular widthsdetermined by a difference between an angle corresponding to one endportion of each of the overlapping shadows and an angle corresponding tothe other end portion thereof.
 12. The coordinate input apparatusaccording to claim 10, wherein the angle corresponding to the endportion is an angle corresponding to a position shifted to the center ofthe overlapping shadows from each of both end portions of the shadows,which are detected to overlap with each other, by an angular amountcorresponding to a diameter of one of the two pointing means.
 13. Amethod of controlling a coordinate input apparatus configured to detecta position pointed on a coordinate input region by using first andsecond sensor units, each associated with one end of an edge of one sideof the coordinate input region, wherein the first and second sensorunits each have at least two optical units, wherein the at least twooptical units includes a light projecting unit configured to projectlight onto the coordinate input region and a light receiving unitconfigured to receive incoming light, comprising: a detection step ofdetecting angle information representing directions of shadows, whichare areas light-shielded by pointing performed by two pointing means,according to a light amount distribution, which is obtained from theoptical units of the first and second sensor units, on the regionincluding the shadows; and a calculation step of calculating coordinatesof positions pointed to by the two pointing units by using: 1) acombination of pieces of angle information on the shadows detected by acombination of the optical units of the different sensor units; and 2) acombination of pieces of angle information on the shadows detected by acombination of the optical units of a same sensor unit.
 14. A programconfigured to implement control of a coordinate input apparatusconfigured to detect a position pointed on a coordinate input region byusing first and second sensor units, each associated with one end of anedge of one side of the coordinate input region, wherein the first andsecond sensor units each have at least two optical units, wherein the atleast two optical units includes a light projecting unit configured toproject light onto the coordinate input region and a light receivingunit configured to receive incoming light, comprising: a program codeconfigured to perform a detection step of detecting angle informationrepresenting directions of shadows, which are areas light-shielded bypointing performed by two pointing means, according to a light amountdistribution, which is obtained from the optical units of the first andsecond sensor units, on the region including the shadows; and a programcode configured to perform a calculation step of calculating coordinatesof positions pointed by the two pointing means by using: 1) acombination of pieces of angle information on the shadows detected by acombination of the optical units of the different sensor units; and 2) acombination of pieces of angle information on the shadows detected by acombination of the optical units of a same sensor unit.
 15. Thecoordinate input apparatus according to claim 3, wherein the calculationunit includes a determination unit configured to determine a close statein which the two shadows are close to each other.
 16. The coordinateinput apparatus according to claim 15, wherein the determination unitdetermines a close state of the two shadows according to one of: a firstangle corresponding to a distance between substantially middles of thetwo shadows; a second angle corresponding to a distance between innerends of the two shadows; a third angle corresponding to a distancebetween outer ends of the two shadows; the second angle/the third angle;and the second angle/the first angle.
 17. A coordinate detection devicecomprising: a first pointing means having a first thickness that blocksa portion of incident light forming a first shadow, wherein the firstpointing means identifies a first coordinate on a coordinate region; asecond pointing means having a second thickness that blocks a portion ofincident light forming a second shadow, wherein the second pointingmeans identifies a second coordinate on the coordinate region; a firstsensor unit, wherein the first sensor unit can distinguish betweenincident light entering at different angles with respect to the front ofthe first sensor unit, and wherein the first shadow and second shadowhave an associated first shadow first unit angle and second shadow firstunit angle detected in the first sensor unit; a second sensor unit,wherein the second sensor unit can distinguish between incident lightentering at different angles with respect to the front of the secondsensor unit, and wherein the first shadow and second shadow have anassociated first shadow second unit angle and second shadow second unitangle detected in the second sensor unit; and a calculation unit thatcalculates the first and second coordinate based upon the first shadowfirst unit angle, the first shadow second unit angle, the second shadowfirst unit angle and the second shadow second unit angle.